#include "threadpool.h"
#include <stdio.h>

// void taskfunc(void *arg)
// {
//     int num = *(int *)arg;
//     printf("num = %d, tip = %ld\n",num, pthread_self());
//     // sleep(1);
// }



// int main (void)
// {
//     // 创建出一个线程池
//     Threadpool *pool = create_threadpool(4,10,100);

//     // 添加任务
//     for(int i = 0; i < 50; i++)
//     {
//         int *num = (int *)malloc(sizeof(int));
//         *num = i + 100;
//         ThreadpoolAdd(pool, taskfunc, num);
//     }

//     sleep(30);

//     ThreadPoolDestroy(pool);
//     // printf("asaa\n");
//     printf("asaa\n");
//     return 0;
// }

void taskFunc(void* arg)
{
    int num = *(int*)arg;
    printf("thread %ld is working, number = %d\n",
        pthread_self(), num);
    sleep(1);
}

int main()
{
    // 创建线程池
    Threadpool* pool = create_threadpool(3, 10, 100);
    for (int i = 0; i < 100; ++i)
    {
        int* num = (int*)malloc(sizeof(int));
        *num = i + 100;
        ThreadpoolAdd(pool, taskFunc, num);
    }

    sleep(30);

    ThreadPoolDestroy(pool);
    return 0;
}

